Additive manufacturing is a process of creating three-dimensional parts by depositing overlapping layers of material under the guided control of a computer. Techniques of additive manufacturing include, without limitation, fused deposition modeling (FDM), fused filament fabrication (FFF), Plastic Jet Printing (PJP), stereolithography (SLA), selective laser sintering (SLS), selective laser melting (SLM), and material jetting (MJ). Using this technique, a material (e.g., a heated and/or pressurized thermoplastic) passes through a print head. The print head is moved in a predefined trajectory (or a tool path) as the material discharges from the print head, such that the material may be deposited in a particular pattern and shape of overlapping layers. The material, after exiting the print head, may harden.
Composite material has been used in three-dimensional (3D) printing which provides high performance designs by utilizing anisotropic stiffness, strength, thermal and electrical properties. For example, the strength in the fiber direction of a fiber composite material is much greater (perhaps ten times greater or more, in some cases) compared to the transverse direction. In this case, if the high stress directions are known from calculations (such as finite element analysis) the fiber direction can be aligned to provide a much stronger structure compared with many other materials. Similar considerations can be applied to structural stiffness, thermal conductivity, electrical conductivity, and the like. Conventional slice algorithms for filament deposition method (e.g., discontinuous fiber) may not allow detailed control of the tool path. For instance, tool path generated by the conventional slicer may not be fine controlled so as to take advantage of the preferred fiber directions. In other cases, such as continuous fiber deposition, there can be other conflicting requirements which may limit the ability to realize the analytically predicted design. Due to the complexity of geometry, it may be difficult to automate the tool path decision process. Additionally, existing methods may lack the capability for determination of complex 3D tool paths.